package org.jeecg.modules.engineering.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.engineering.entity.EquipCollectItem;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.engineering.entity.EquipCollectTrigger;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * @Description: 设备采集项
 * @Author: jeecg-boot
 * @Date:   2019-09-12
 * @Version: V1.0
 */
public interface IEquipCollectItemService extends IService<EquipCollectItem> {

    /**
     * 添加一对多
     *
     */
    void saveMain(EquipCollectItem equipCollectItem,List<EquipCollectTrigger> equipCollectTriggerList) ;

    /**
     * 修改一对多
     *
     */
    void updateMain(EquipCollectItem equipCollectItem, List<EquipCollectTrigger> equipCollectTriggerList);

    /**
     * 删除一对多
     */
    void delMain (String id);

    /**
     * 批量删除一对多
     */
    void delBatchMain (List<String> idList);

    void removeFromRedis(String id);

    void removeFromRedis(EquipCollectItem entity);

    EquipCollectItem getFromRedisByOtherKey(String key);

    EquipCollectItem getFromRedisById(String id);

    Result<String> refreshToRedis();


    IPage<EquipCollectItem> selectSqlList(Page<EquipCollectItem> page, String collectName, String collectCode);
}
